Companies have a need to maintain and access information relevant to their business and assets. Often, such information is not centralized but instead exists in diverse data sources and locations, for example in Tivoli and SMS applications, in spreadsheets, in Visio diagrams, in modeling tools, etc. Much of the data in these various data sources is overlapping and frequently conflicting. Because data is stored in diverse data sources and locations, it may not be easily accessible. Thus, data may not be available to those who require it or the data may become increasingly obsolete because it is difficult to access and update.
A common solution to this problem is to compile data into a central database. An existing approach is to write custom code for each data source (spreadsheet, SMS, Tivoli, etc) that reads data from the data source and writes it into the central database. A system for extracting data from various sources according to the above prior art methodology is shown in system 100 of FIG. 1.
In system 100, data from database 110, spreadsheet 120 and other data source 130, such as a Tivoli application or a modeling tool, is extracted to centralized database 140 by custom code for database 115, custom code for spreadsheet 125 and custom code for other data source 135, respectively. There are multiple problems with this approach. First, it is expensive to write custom code for each type of data source and custom code may have to be developed for each type of data source from which data will extracted. Second, as is shown FIG. 1, this approach does not address the problems of overlapping data sources and redundant or conflicting data held in the same or different data sources as part of an integrated process involving all the data sources. Instead, any attempt to address these issues would have to be conducted piecemeal in each separate custom code. Because individual custom codes may not be cognizant of each other or of other data sources, such attempts might be incomplete or unfeasible. Thus, prior art methods may not have the capacity to resolve differences between overlapping data sources or conflicts between redundant or conflicting data.
Furthermore, different custom codes may extract data in different formats and store the data into the central database such that data from different extractors exists in different formats or is organized differently. In addition, because the process of extracting data to a central database can consume large amounts of computational resources, the process has the potential to prevent other processes, program or users from receiving computational resources adequate for their processing requirements, effectively limiting the use of the database or the computer system running the database.